home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
CRS
/
crs03.d81
/
autox.sda
/
AUTO EXPENSE
(
.txt
)
next >
Wrap
Commodore BASIC
|
2009-10-10
|
19KB
|
605 lines
10 REM AUTO EXPENSE - (VER 2.5):BY D. SCOTT 06/91
20 PRINT"[147] DO YOU NEED INSTRUCTIONS? (Y/N)
30 [161]K$:[139]K$[178]""[167]30
40 [139]K$[178]"N"[167]90
50 [139]K$[178]"Y"[167]72
60 [137]30
70 [143] SEQUENTIAL FILE READER
72 [151]53281,15:[151]53272,21:[153]"LOAD":S$[178]"AUTO.INST"
74 [159]1,8,2,S$[170]",M,R":[159]4,3:[153]"LOAD"
76 [153][163]10)"HIT ANY KEY TO PAUSE":[153]"STOP"
78 [161]#1,A$:[139]ST[178]0[167][152]4,A$;:[146]198,1,1:[151]198,0:[137]78
80 [152]4:[160]1:[160]4:[153]" DONE --- PRESS ANY KEY FOR MENU"
82 [161]K$:[139]K$[178]""[167]82
90 R[178]0:[153][199](142)
92 [134]SI$(401),SD$(401),VM(401),SC(401),SP$(401),CO$(401),GF(401)
94 [150] [165]RO(X)[178][181]((X)[172]1000[170].5)[173]1000
100 [151]53280,2:[151]53281,1
102 [153]"LOAD A U T O E X P E N S E STOP V2.5 WAIT";
104 [153]" WAIT";
106 [153]" AUTOMOBILE FILE: STOP"F$ "
108 PRINT" MAXIMUM RECORDS:[144] 300 NOW ON FILE:[144]" R
110 PRINT"[151] [146]";
112 PRINT"[144] 1 [146] = D [146][144]ISK DIRECTORY"
114 PRINT" 2 [146] = L [146][144]OAD A FILE"
116 PRINT" 3 [146] = E [146][144]NTER NEW RECORDS
118 [153]" 4 WAIT = V WAITSTOPIEW ALL RECORDS
120 PRINT" 5 [146] = F [146][144]IND RECORDS"
122 PRINT" 6 [146] = C [146][144]ALCULATIONS
124 [153]" 7 WAIT = S WAITSTOPAVE THE FILE"
126 [153]" 8 WAIT = P WAITSTOPRINT HARD COPY
128 PRINT" 9 [146] = Q [146][144]UIT PROGRAM
136 [153]" ENTER ^ ^
138 PRINT" NUMBER [146] OR LETTER [146][144] FOR OPTION";
140 GETKEY$:IFKEY$=""THEN140
142 IFKEY$="1"ORKEY$="D"THEN262
144 IFKEY$="2"ORKEY$="L"THEN202
146 IFKEY$="3"ORKEY$="E"THEN402
148 IFKEY$="4"ORKEY$="V"THEN502
149 IFKEY$="5"ORKEY$="F"THEN802
150 IFKEY$="6"ORKEY$="C"THEN1400
154 IFKEY$="7"ORKEY$="S"THEN330
156 IFKEY$="8"ORKEY$="P"THEN1002
158 IFKEY$="9"ORKEY$="Q"THEN171
160 GOTO140
170 POKE781,X:POKE782,Y:POKE783,0:SYS65520:RETURN
171 POKE53281,0
172 X=10:Y=5:GOSUB170:PRINT"[129][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201][146]"
173 X=11:GOSUB170:PRINT"[221] W A R N I N G [221][146]"
174 X=12:GOSUB170:PRINT"[171][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][179][146]"
175 X=13:GOSUB170:PRINT"[221] [221][146]"
176 X=14:GOSUB170:PRINT"[221] HAVE YOU SAVED UPDATE?? [221][146]"
177 X=15:GOSUB170:PRINT"[221] [221][146]"
178 X=16:GOSUB170:PRINT"[221] PRESS M TO RETURN TO MENU [221][146]"
179 X=17:GOSUB170:PRINT"[221] [221][146]"
180 X=18:GOSUB170:PRINT"[221] PRESS Q TO QUIT PROGRAM [221][146]"
181 X=19:GOSUB170:PRINT"[221] [221][146]"
182 X=20:GOSUB170:PRINT"[202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203][146]"
183 X=21:GOSUB170:PRINT" ";
192 GOSUB675:GOSUB675
193 GETKEY$:IFKEY$=""THEN193
194 IFKEY$="M"THEN100
195 IFKEY$="Q"THENP$="BOOT":GOTO197
196 GOTO193
197 PRINT"[147]LOAD"CHR$(34)P$CHR$(34)",8"
198 PRINT"RUN":POKE198,3:POKE631,19:POKE632,13:POKE633,13
199 NEW
200 REM **** LOAD FILE ****
202 F$="":POKE53281,6:POKE53280,14:PRINT"[147]"TAB(15)"[158]LOAD FILE"
204 PRINT""TAB(10)"REMOVE PROGRAM DISK":GOSUB680
206 PRINTTAB(11)"INSERT FILE DISK"
208 PRINTTAB(12)"ENTER FILE NAME"
210 PRINTTAB(11)"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][145][145]":LI=16:TA=10:GOSUB650
212 IFB$=""THEN100
214 F$=B$
216 OPEN15,8,15:PRINT#15,"I0":OPEN1,8,2,B$
218 INPUT#15,E,E$,E1,E2
220 IFETHEN620
222 J=0:TC=0:TF=0
224 J=J+1:PRINT"";J
226 INPUT#1,SI$(J)
227 INPUT#1,SD$(J)
228 INPUT#1,VM(J)
229 INPUT#1,GF(J)
230 INPUT#1,SC(J)
231 INPUT#1,SP$(J)
232 INPUT#1,CO$(J)
234 TF=TF+GF(J)
236 TC=TC+SC(J):TC$=STR$(TC)
237 IFLEN(TC$)<3THENTC$=LEFT$(TC$,1)+"0"+RIGHT$(TC$,1)
238 TC$=LEFT$(TC$,LEN(TC$)-2)+"."+RIGHT$(TC$,2)
240 IFST=0THEN224
242 R=J
244 CLOSE1:CLOSE15
246 PRINT"[147] ";R;"RECORDS WERE LOADED"
248 PRINT" PRESS ANY KEY FOR MENU"
252 GETZ$:IFZ$=""THEN252
254 GOTO100
260 REM ***** VIEW DISK DIRECTORY
262 PRINT"[147][144]":OPEN1,8,0,"$":GET#1,A$,A$
264 GET#1,A$,A$:IFA$=""THEN276
266 GET#1,B$,C$
268 BL=ASC(B$+CHR$(0)):BH=ASC(C$+CHR$(0))
270 D$=MID$(STR$(BL+256*BH),2)+CHR$(32)
272 PRINTD$;:GET#1,D$:IFD$<>""THEN272
274 PRINT:GETE$:IFE$<>"Q"THEN264
276 CLOSE1:PRINT" DONE---PRESS ANY KEY"
278 GETK$:IFK$=""THEN278
280 GOTO100
300 REM **** SAVE FILE ****
330 GOSUB1500
332 POKE53281,0:PRINTTAB(15)"[147]SAVE FILE"
334 PRINT"[158] REMOVE PROGRAM DISK & INSERT DATA DISK[159]":GOSUB680
336 PRINT""TAB(12)"FILE IN USE IS:"
338 PRINT"[159]"TAB((38-LEN(F$))/2)F$
340 PRINTTAB(12)"[158]ENTER FILE NAME"
342 PRINTTAB(11)"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][145][145]":LI=16:TA=10:GOSUB650
344 IFB$=""THEN100
346 IFB$=F$ORF$=""THEN364
348 GOSUB675
350 PRINT" [158]THE FILE NAME YOU ENTERED IS NOT"
352 PRINT" THE SAME AS THE FILE IN USE!"
354 PRINT"[129] USE NEW FILE NAME Y[146] OR N[146]"
356 GETZ$:IFZ$=""THEN356
358 IFZ$="N"THEN332
360 IFZ$="Y"THEN364
362 GOTO356
364 OPEN15,8,15:PRINT#15,"I0":OPEN1,8,2,"@0:"+B$+",S,W
366 [132]15,E,E$,E1,E2
368 [139]E[167]620
370 [153]""[166]8)"SAVING ";B$;
372 [129]J[178]1[164]R
374 [139]SI$(J)[178]"DELETE"[167]390
376 [152]1,SI$(J);[199](13);
378 [152]1,SD$(J);[199](13);
379 [152]1,VM(J);[199](13);
380 [152]1,GF(J);[199](13);
381 [152]1,SC(J);[199](13);
382 [152]1,SP$(J);[199](13);
383 [152]1,CO$(J);[199](13);
390 [130]J
392 [160]1:[160]15
394 [153][166]5)" DONE WAIT":A[178]0
396 [129]T[178]1[164]1000:[130]
398 [137]100
400 [143] **** ENTER RECORD INFORMATION ****
402 [139]R[179]400[167]408
404 [153]"LOAD DATA BASE IS FULL"
405 [153]" PRESS ANY KEY FOR MENU":[141]675
406 [161]KEY$:[139]KEY$[178]""[167]406
407 [137]100
408 [151]53281,0
410 [153]"LOAD ";F$" WAIT"
412 [153]" ENTER DATA WAIT RECORD NUMBER " R[170]1
413 [153]" FOR DO NOT USE COMMAS OR COLONS! WAIT"
414 [153]"SYS REPAIR/SERVICE/ITEM WAITOPEN
415 PRINT" [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][145]"
416 PRINT"[158] SERVICE DATE [146][159] [163][163][163][163][163][163][163][163][145]"
417 PRINT"[158] MILEAGE [146][159] [163][163][163][163][163][163][145]"
418 PRINT"[158] GALLONS FUEL [146][159] [163][163][163][163][163][163][145]"
419 PRINT"[158] SERVICE COST [146]$[159] [163][163][163][163][163][163][163][145]"
420 PRINT"[158] PROVIDER [146][159] [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][145]"
422 PRINT"[158] COMMENTS [146][159] [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][145]"
424 PRINT" ENTER SERVICE DATE AS YR/MO/DA
426 [153]" EXAMPLE: 91/04/01."
428 [153]" ENTER SERVICE COSTS WITHOUT THE
430 PRINT" DECIMAL POINT. (EG: 75.00=7500)[145][145][145][145][145][145][145]"
432 PRINT"":TA=2:LI=25:GOSUB650
434 IFB$=""THEN100
436 R=R+1:SI$(R)=B$:A=1
438 PRINT:TA=17:LI=8:GOSUB650
440 IFB$=""THENB$="-"
442 SD$(R)=B$
444 PRINT:TA=17:LI=6:GOSUB635
446 IFB$=""THENB$="-"
448 VM(R)=VAL(B$)
450 PRINT:TA=17:LI=6:GOSUB650
452 IFB$=""THENB$="-"
453 GF(R)=VAL(B$)
454 PRINT:TA=17:LI=7:GOSUB635
455 IFB$=""THENB$="-"
456 SC(R)=VAL(B$)
457 PRINT:TA=17:LI=15:GOSUB650
458 IFB$=""THENB$="-"
460 SP$(R)=B$
462 PRINT:TA=17:LI=17:GOSUB650
464 IFB$=""THENB$="-"
466 CO$(R)=B$
468 PRINT"[151]----------------------------------------";
470 PRINT" CORRECT?....Y[146] OR N[146]"
472 PRINT" "
474 PRINT" "
482 GETZ$:IFZ$=""THEN482
484 IFZ$="N"THENGOSUB698:GOTO490
486 IFZ$="Y"THEN490
488 GOTO482
490 PRINT"[145][145][145] ENTER ANOTHER ITEM? Y[146] OR N[146]"
492 GETZ$:IFZ$=""THEN492
494 IFZ$="N"THEN100
496 IFZ$="Y"THEN400
498 GOTO492
500 REM ***** VIEW RECORDS *****
502 FORJ=1TOR
504 GOSUB506:GOTO570
506 POKE53281,1:PRINT"[147][144] VIEW FILE ";F$" [146]"
508 PRINT" RECORD NUMBER[144]";J
510 PRINT"REPAIR/MAINTENANCE/ SERVICE ITEM [144]";SI$(J)
512 PRINT"SERVICE DATE [144]";SD$(J);" MILEAGE[144]";VM(J)
513 REM PRINT"MILEAGE [144] ";VM(J)
514 PRINT"GALLONS FUEL [144] ";GF(J)
515 SC$=STR$(SC(J))
516 IFLEN(SC$)<3THENSC$=LEFT$(SC$,1)+"0"+RIGHT$(SC$,1)
518 SC$=LEFT$(SC$,LEN(SC$)-2)+"."+RIGHT$(SC$,2)
542 IFLEN(SC$)>7THEN552
544 IFLEN(SC$)>6THENSC$=" "+SC$:GOTO552
546 IFLEN(SC$)>5THENSC$=" "+SC$:GOTO552
548 IFLEN(SC$)>4THENSC$=" "+SC$:GOTO552
550 IFLEN(SC$)>3THENSC$=" "+SC$:GOTO552
552 PRINT"SERVICE COST $[146][144]";SC$
554 PRINT"PROVIDER [144] ";SP$(J)
556 PRINT"COMMENTS [144] ";CO$(J)
560 PRINT"[151]----------------------------------------";
562 PRINT" PRESS <RETURN> [151][146] FOR NEXT RECORD"
564 PRINT" PRESS <E> [151][146] TO EDIT RECORD"
566 PRINT" PRESS <D> [151][146] TO DELETE RECORD"
568 PRINT" PRESS <_> [151][146] TO RETURN TO MENU":RETURN
570 GET KEY$:IFKEY$=""THEN570
572 IFKEY$=CHR$(13)THENNEXTJ
574 IFKEY$=CHR$(95)THEN100
576 IFKEY$="E"THENPOKE53281,0:GOSUB700:GOTO504
578 IFKEY$="D"THENGOSUB584:GOTO504
580 IFKEY$=CHR$(13)THENPRINT" END OF FILE [146]";:FORT=1TO2000:GOTO100
582 GOTO570
584 PRINT" [149] CONFIRM RECORD DELETE: Y OR N [146]":GOSUB675:GOSUB675
586 GETKEY$:IFKEY$=""THEN586
588 IFKEY$="Y"THEN592
590 RETURN
592 SI$(J)="DELETE"
594 RETURN
620 PRINT"",E$:CLOSE15:CLOSE1:E=0
622 PRINT"PRESS ANY KEY-MAKE CORRECTION-TRY AGAIN."
624 GOSUB675:GOSUB675
626 GETZ$:IFZ$=""THEN626
628 GOTO100
635 B$="":PRINTTAB(TA)"[158]>";
636 GETA$:IFA$=""THEN636
637 IFA$>CHR$(57)OR(A$=CHR$(20)ANDLEN(B$)<1)THENGOSUB675:GOTO636
638 IFA$=CHR$(13)THEN645
639 IFA$=CHR$(20)THENB$=LEFT$(B$,LEN(B$)-1):GOTO642
640 IFA$<CHR$(46)ORLEN(B$)>LI-1THENGOSUB675:GOTO636
641 B$=B$+A$
642 IFLEN(B$)>1THEN644
643 PRINTTAB(TA+1)
644 PRINTA$;:GOTO636
645 PRINT:RETURN
650 B$="":PRINTTAB(TA)"[158]>";
652 GETA$:IFA$=""THEN652
653 IFA$>CHR$(90)OR(A$=CHR$(20)ANDLEN(B$)<1)THENGOSUB675:GOTO652
654 IFA$=CHR$(13)THEN670
656 IFA$=CHR$(20)THENB$=LEFT$(B$,LEN(B$)-1):GOTO664
658 IFA$=CHR$(44)ORA$=CHR$(58)ORA$=CHR$(59)ORA$=CHR$(17)THENGOSUB675:GOTO652
659 IFA$=CHR$(19)ORA$=CHR$(29)THENGOSUB675:GOTO652
660 IFLEN(B$)>LI-1THENGOSUB675:GOTO652
662 B$=B$+A$
664 IFLEN(B$)>1THEN668
666 PRINTTAB(TA+1)
668 PRINTA$;:GOTO652
670 PRINT:RETURN
675 REM BUZZ
676 POKE54296,15:POKE54277,45:POKE54278,165
677 POKE54276,33:POKE54273,6:POKE54272,5
678 FORCD=1TO150:NEXT:POKE54276,16:RETURN
680 REM BELL
681 POKE54296,15:POKE54277,0:POKE54278,247
682 POKE54276,17:POKE54273,40:POKE54272,0
683 FORCD=1TO250:NEXT:POKE54276,16:RETURN
698 J=R
700 REM **** EDIT RECORDS ****
702 POKE53281,0:PRINT"[147][158]"TAB(10)" EDIT RECORD #";J
704 PRINT"[158]1 REPAIRS/SERVICE/ITEM [146] [159]"
705 PRINT" ";SI$(J)
706 PRINT"[158]2 SERVICE DATE [146] [159]";SD$(J)
707 PRINT"[158]3 MILEAGE [146] [159]";VM(J)
708 PRINT"[158]4 GALLONS FUEL [146] [159]";GF(J)
709 PRINT"[158]5 SERVICE COST [146]$ [159]";SC(J)
710 PRINT"[158]6 PROVIDER [146] [159]";SP$(J)
712 PRINT"[158]7 COMMENTS [146] [159]";CO$(J)
718 PRINT" EDIT WHICH LINE OR [_] TO ESCAPE ?"
720 GETY$:IFY$=""THEN720
721 IFY$=CHR$(95)THENPRINT"[147]":RETURN
722 IFY$<"1"ORY$>"7"THEN720
724 IFY$<"3"ORY$>"5"THEN726
725 PRINT"[145][129] HIT RETURN TO INPUT A ZERO AMOUNT [146]":GOTO727
726 PRINT"[145][129]BLANKED FIELDS, ENTER [-] IN POSITION 1[146]"
727 ONVAL(Y$)GOTO728,732,736,740,744,748,752
728 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][158]1 REPAIRS/SERVICE/ITEM [146]":TA=2:LI=25:GOSUB650
730 SI$(J)=B$:PRINT"":GOTO760
732 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145][145][158]2 SERVICE DATE [145][146]":TA=18:LI=8:GOSUB650
734 SD$(J)=B$:PRINT"":GOTO760
736 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][158]3 MILEAGE [145][146]":TA=19:LI=6:GOSUB635
738 VM(J)=VAL(B$):PRINT"":GOTO760
740 PRINT"[145][145][145][145][145][145][145][145][145][145][158]4 GALLONS FUEL [145][146]":TA=19:LI=6:GOSUB635
742 GF(J)=VAL(B$):PRINT"":GOTO760
744 PRINT"[145][145][145][145][145][145][145][145][158]5 SERVICE COST [145][146]":TA=19:LI=7:GOSUB635
746 SC(J)=VAL(B$):PRINT"":GOTO760
748 PRINT"[145][145][145][145][145][145][158]6 PROVIDER [145][146]":TA=18:LI=15:GOSUB650
750 SP$(J)=B$:PRINT"":GOTO760
752 PRINT"[145][145][145][145][158]7 COMMENTS [145][146]":TA=18:LI=17:GOSUB650
754 CO$(J)=(B$)
760 A=1:PRINT" EDIT ANOTHER LINE? Y OR N "
762 GETKEY$:IFKEY$=""THEN762
764 IFKEY$="N"THENPRINT"[147]":RETURN
766 IFKEY$="Y"THENPRINT"[145][145][145]":GOTO718
768 GOTO762
800 REM SEARCH ROUTINE
802 X=13:Y=1:GOSUB170:PRINT" [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201] "
804 X=14:GOSUB170:PRINT"[144] [221] FIND [146][144] SPECIFIC RECORDS FOR [144][221]"
806 X=15:GOSUB170:PRINT" [171][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][179]"
808 X=16:GOSUB170:PRINT" [221] [144] 1 [146] = ITEM/SERVICE NAME [221]"
810 X=17:GOSUB170:PRINT" [221] [221]"
812 X=18:GOSUB170:PRINT" [221] [144] 2 [146] = PROVIDER [221]"
814 X=19:GOSUB170:PRINT" [221] [221]"
816 X=20:GOSUB170:PRINT" [221] [144] 3 [146] = YEAR [221]"
818 X=21:GOSUB170:PRINT" [221] [221]"
820 X=22:GOSUB170:PRINT" [221] _] RETURN TO MENU [221]"
822 X=23:GOSUB170:PRINT" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
824 X=24:GOSUB170:PRINT" PRESS NUMBER OR _ FOR OPTION ";
830 GETKEY$:IFKEY$=""THEN830
832 IFKEY$="1"THEN840:REM ITEM SEARCH
834 IFKEY$="2"THEN900:REM PROVIDER SEARCH
835 IFKEY$="3"THEN860:REM YEAR SEARCH
836 IFKEY$=CHR$(95)THEN100
838 GOTO830
840 POKE53281,0:PRINT"[147] ENTER NAME TO SEARCH FOR"
841 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=25:GOSUB650
842 IFB$=""THEN100
844 FORJ=1TOR
846 IFLEFT$(SI$(J),LEN(B$))=B$THENGOSUB506:GOSUB950
848 NEXTJ
850 GOTO980
860 POKE53281,0:PRINT"[147] ENTER LAST TWO DIGITS OF"
861 PRINT" YEAR TO SEARCH FOR:"
862 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=2:GOSUB650
864 IFB$=""THEN100
866 FORJ=1TOR
868 IFLEFT$(SD$(J),LEN(B$))=B$THENGOSUB506:GOSUB950
870 NEXTJ
872 GOTO980
900 POKE53281,0:PRINT"[147] ENTER PROVIDER NAME "
901 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=15:GOSUB650
902 IFB$=""THEN100
904 FORJ=1TOR
906 IFLEFT$(SP$(J),LEN(B$))=B$THENGOSUB506:GOSUB950
908 NEXTJ
910 GOTO980
950 GETKEY$:IFKEY$=""THEN950
952 IFKEY$=CHR$(13)THENRETURN
954 IFKEY$=CHR$(95)THEN100
956 IFKEY$="E"THENPOKE53281,0:GOSUB700:GOSUB506:GOTO950
958 IFKEY$="D"THENGOSUB584:
962 GOTO950
980 B$="NO MATCH FOUND OR END OF FILE"
990 PRINT"[129] ";B$" [146][145]":FORT=1TO1000:NEXT:GOSUB680:GOTO100
1000 REM ***** PRINT OUT ROUTINES *****
1002 X=11:Y=8:GOSUB170:PRINT"[213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
1004 X=12:GOSUB170:PRINT"[221] N O T E [146][221]"
1006 X=13:GOSUB170:PRINT"[221] USE TRACTOR FEED [146][221]"
1008 X=14:GOSUB170:PRINT"[221] CONTINUOUS PAPER [146][221]"
1010 X=15:GOSUB170:PRINT"[221] FOR PRINTOUTS. [146][221]"
1012 X=16:GOSUB170:PRINT"[221] PRESS <RETURN> [146][221]"
1014 X=17:GOSUB170:PRINT"[221] TO CONTINUE. [146][221]"
1016 X=18:GOSUB170:PRINT"[202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
1018 GOSUB675:GOSUB680
1020 GETKEY$:IFKEY$=""THEN1020
1022 IFKEY$=CHR$(13)THENGOSUB1030:GOTO1050
1026 GOTO1020
1030 TC=0:OPEN4,4:PRINT#4,CHR$(0)
1032 IFST=0THENRETURN
1033 PRINT"[147] [146]":CLOSE4:GOSUB675
1034 PRINT" WHERE IS THE PRINTER ??? [146]"
1036 PRINT" CHECK PRINTER [146]"
1038 PRINT" PRESS [ + ] AND TRY AGAIN [146]"
1040 PRINT" PRESS [ _ ] TO ESCAPE TO MENU [146]"
1041 PRINT" [146]";
1042 GETKEY$:IFKEY$=""THEN1042
1044 IFKEY$=CHR$(43)THEN1030
1046 IFKEY$=CHR$(95)THEN100
1048 GOTO1042
1049 SEIKOSHA PRINTER RESET ROUTINE
1050 OPEN10,4,10:PRINT#10:CLOSE10:I=0
1100 X=9:Y=1:GOSUB170:PRINT" [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201] "
1102 X=10:GOSUB170:PRINT" [221] PRINT [146][144] RECORDS... [144][221]"
1104 X=11:GOSUB170:PRINT" [171][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][179]"
1106 X=12:GOSUB170:PRINT" [221] [144] 1 [146] = ENTIRE FILE [221]"
1108 X=13:GOSUB170:PRINT" [221] [221]"
1110 X=14:GOSUB170:PRINT" [221] OR FOR A SPECIFIC...[144] [221]"
1112 X=15:GOSUB170:PRINT" [221] [221]"
1114 X=16:GOSUB170:PRINT" [221] [144] 2 [146] = ITEM OR SERVICE [221] "
1116 X=17:GOSUB170:PRINT" [221] [221]"
1118 X=18:GOSUB170:PRINT" [221] [144] 3 [146] = PROVIDER [221]"
1120 X=19:GOSUB170:PRINT" [221] [221]"
1122 X=20:GOSUB170:PRINT" [221] [144] 4 [146] = YEAR [221]"
1124 X=21:GOSUB170:PRINT" [221] [221]"
1126 X=22:GOSUB170:PRINT" [221] _] RETURN TO MENU [221]"
1128 X=23:GOSUB170:PRINT" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
1130 X=24:GOSUB170:PRINT" PRESS NUMBER OR _ FOR OPTION ";
1140 GETKEY$:IFKEY$=""THEN1140
1142 IFKEY$="1"THEN2100:ENTIRE FILE
1144 IFKEY$="2"THEN1200:ITEM
1146 IFKEY$="3"THEN1230:PROVIDER
1148 IFKEY$="4"THEN1260:YEAR
1150 IFKEY$=CHR$(95)THEN100
1152 GOTO1140
1200 POKE53281,0:PRINT"[147] ENTER ITEM/SERVICE NAME TO SEARCH FOR"
1202 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=25:GOSUB650
1204 IFB$=""THEN1100
1206 PRINT" ENTER REPORT DATE (EX: 03/01/89)"
1208 INPUT"[158] ";RD$
1210 GOSUB2182
1212 FORJ=1TOR
1224 IFLEFT$(SI$(J),LEN(B$))=B$THENGOSUB1300
1226 NEXT J
1228 GOTO1290
1230 POKE53281,0:PRINT"[147] ENTER PROVIDER NAME TO SEARCH FOR"
1232 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=15:GOSUB650
1234 IFB$=""THEN1100
1236 PRINT" ENTER REPORT DATE (EX: 03/01/89)"
1238 INPUT"[158] ";RD$
1240 GOSUB2182
1242 FORJ=1TOR
1244 IFLEFT$(SP$(J),LEN(B$))=B$THENGOSUB1300
1246 NEXT J
1248 GOTO1290
1260 POKE53281,0:PRINT"[147] ENTER LAST TWO DIGITS [146] OF"
1262 PRINT" YEAR TO SEARCH FOR..."
1264 PRINT"[158] (OR PRESS RETURN TO ESCAPE)":TA=10:LI=2:GOSUB650
1266 IFB$=""THEN1100
1268 PRINT" ENTER REPORT DATE (EX: 03/01/89)"
1270 INPUT"[158] ";RD$
1272 GOSUB2182
1274 FORJ=1TOR
1276 IFLEFT$(SD$(J),LEN(B$))=B$THENGOSUB1300
1278 NEXT J
1280 GOTO1290
1290 FORX=1TO96:PRINT#4,"=";:NEXT
1292 PRINT#4,CHR$(27)"P":PRINT#4,CHR$(14)" TOTAL COST IS $";TC/100
1294 PRINT#4,CHR$(15):CLOSE4:GOSUB680:GOTO100
1299 PRINT SELECTED ITEMS ROUTINE
1300 FOR J=1TOR:I=I+1:IFI=26THENGOSUB2180
1306 IFLEN(SC$)<3THENSC$=LEFT$(SC$,1)+"0"+RIGHT$(SC$,1)
1308 SC$=LEFT$(SC$,LEN(SC$)-2)+"."+RIGHT$(SC$,2)
1310 IFLEN(SC$)>7THEN1320
1312 IFLEN(SC$)>6THENSC$=" "+SC$:GOTO1320
1314 IFLEN(SC$)>5THENSC$=" "+SC$:GOTO1320
1316 IFLEN(SC$)>4THENSC$=" "+SC$:GOTO1320
1318 IFLEN(SC$)>3THENSC$=" "+SC$
1320 PRINT#4,SI$(J)CHR$(16)"27"SD$(J)CHR$(16)"36"VM(J)CHR$(16)"45";
1322 PRINT#4,SC$CHR$(16)"58"SP$(J)CHR$(16)"75"CO$(J)
1324 TC=TC+SC(J):TC$=STR$(TC)
1326 IFLEN(TC$)<3THENTC$=LEFT$(TC$,1)+"0"+RIGHT$(TC$,1)
1328 TC$=LEFT$(TC$,LEN(TC$)-2)+"."+RIGHT$(TC$,2)
1330 FORX=1TO96:PRINT#4,"-";:NEXTX:RETURN
1400 REM **** CALCULATIONS ****
1404 X=6:Y=1:GOSUB170:PRINT" [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201][146]"
1406 X=7:GOSUB170:PRINT" [221] C A L C U L A T E [221][146]"
1408 X=8:GOSUB170:PRINT" [171][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][179][146]"
1410 X=9:GOSUB170:PRINT" [221] [221][146]"
1412 X=10:GOSUB170:PRINT" [221] BASED ON SAVED RECORDS [144] [221][146]"
1414 X=11:GOSUB170:PRINT" [221] [144] [221][146]"
1416 X=12:GOSUB170:PRINT" [221] O N L Y ! ! [144] [221][146]"
1418 X=13:GOSUB170:PRINT" [221] [146] [221][146]"
1420 X=14:GOSUB170:PRINT" [221] [146] T = TOTAL COST TO DATE [221][146]"
1422 X=15:GOSUB170:PRINT" [221] [146] [221][146]"
1424 X=16:GOSUB170:PRINT" [221] [146] C = AVERAGE COST/MILE [221][146]"
1426 X=17:GOSUB170:PRINT" [221] [146] [221][146]"
1428 X=18:GOSUB170:PRINT" [221] [146] F = AVERAGE MPG (FUEL) [221][146]"
1430 X=19:GOSUB170:PRINT" [221] [146] [221][146]"
1432 X=20:GOSUB170:PRINT" [221] [146] _ = RETURN TO MENU [221][146]"
1434 X=21:GOSUB170:PRINT" [221] [146] [221][146]"
1436 X=22:GOSUB170:PRINT" [221] ^ [221][146]"
1437 X=23:GOSUB170:PRINT" [221] [173][195][195][ENTER FOR OPTION] [221][146]"
1438 X=24:GOSUB170:PRINT" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203][146]";
1440 GETKEY$:IFKEY$=""THEN1440
1442 IFKEY$="T"THEN2400
1444 IFKEY$="C"THEN2500
1446 IFKEY$="F"THEN2600
1448 IFKEY$="_"THEN100
1450 GOTO1440
1500 REM SORT ROUTINE
1501 PRINT"[147] SORTING FILE...STANDBY"
1505 S=0:F=1:L=R
1510 FS$=SD$(INT((L+F)/2)):I=F:J=L
1520 IFSD$(I)<FS$THENI=I+1:GOTO1520
1530 IFSD$(J)>FS$THENJ=J-1:GOTO1530
1540 IFI>JTHEN1590
1550 IFI=JTHEN1570
1560 REM RECORD SWAP ROUTINE
1561 F1$=SD$(I):SD$(I)=SD$(J):SD$(J)=F1$
1562 F2$=SI$(I):SI$(I)=SI$(J):SI$(J)=F2$
1563 F3=VM(I):VM(I)=VM(J):VM(J)=F3
1564 F4=GF(I):GF(I)=GF(J):GF(J)=F4
1565 F5=SC(I):SC(I)=SC(J):SC(J)=F5
1566 F6$=SP$(I):SP$(I)=SP$(J):SP$(J)=F6$
1567 F7$=CO$(I):CO$(I)=CO$(J):CO$(J)=F7$
1570 I=I+1:J=J-1
1580 IFI<=JTHEN1520
1590 IFI>=LTHEN1610
1600 F(S)=I:L(S)=L:S=S+1
1610 L=J
1620 IFF<LTHEN1510
1630 IFS=0THENRETURN:REM GOTO SAVE ROUTINE
1640 S=S-1:F=F(S):L=L(S)
1650 GOTO1510
2100 REM ***** PRINTOUT FORMAT *****
2102 PRINT"[147] ENTER REPORT DATE (EX: 03/01/89)"
2104 INPUT" ";RD$
2110 PRINT#4,CHR$(27)"P"
2115 PRINT#4,CHR$(14)" A U T O E X P E N S E "
2120 PRINT#4,CHR$(27)"M":PRINT#4,CHR$(15)"";F$CHR$(16)"60"RD$
2125 FORX=1TO96:PRINT#4,"=";:NEXT
2130 PRINT#4,"REPAIRS/SERVICE/ITEM DATE MILEAGE COST ";
2132 PRINT#4,"PROVIDER COMMENTS"
2134 FORX=1TO96:PRINT#4,"=";:NEXT
2138 FOR J=1TOR:I=I+1:IFI=26THENGOSUB2180
2142 SC$=STR$(SC(J))
2143 IFLEN(SC$)<3THENSC$=LEFT$(SC$,1)+"0"+RIGHT$(SC$,1)
2144 SC$=LEFT$(SC$,LEN(SC$)-2)+"."+RIGHT$(SC$,2)
2145 IFLEN(SC$)>7THEN2153
2146 IFLEN(SC$)>6THENSC$=" "+SC$:GOTO2153
2147 IFLEN(SC$)>5THENSC$=" "+SC$:GOTO2153
2148 IFLEN(SC$)>4THENSC$=" "+SC$:GOTO2153
2149 IFLEN(SC$)>3THENSC$=" "+SC$
2153 PRINT#4,SI$(J)CHR$(16)"27"SD$(J)CHR$(16)"36"VM(J)CHR$(16)"45";
2154 PRINT#4,SC$CHR$(16)"58"SP$(J)CHR$(16)"75"CO$(J)
2155 TC=TC+SC(J):TC$=STR$(TC)
2156 IFLEN(TC$)<3THENTC$=LEFT$(TC$,1)+"0"+RIGHT$(TC$,1)
2157 TC$=LEFT$(TC$,LEN(TC$)-2)+"."+RIGHT$(TC$,2)
2160 FORX=1TO96:PRINT#4,"-";:NEXTX
2165 NEXTJ
2170 FORX=1TO96:PRINT#4,"=";:NEXT
2172 PRINT#4,CHR$(27)"P":PRINT#4,CHR$(14)" TOTAL VEHICLE COST IS $";TC/100
2175 PRINT#4,CHR$(15):CLOSE4:GOSUB680:GOTO100
2180 FOROF=1TO10:PRINT#4:NEXTOF:I=0
2182 PRINT#4,CHR$(27)"P"
2183 PRINT#4,CHR$(14)" A U T O E X P E N S E "
2184 PRINT#4,CHR$(27)"M":PRINT#4,CHR$(15)"";F$CHR$(16)"60"RD$
2185 FORX=1TO96:PRINT#4,"=";:NEXT
2186 PRINT#4,"REPAIRS/SERVICE/ITEM DATE MILEAGE COST ";
2187 PRINT#4,"PROVIDER COMMENTS"
2188 FORX=1TO96:PRINT#4,"=";:NEXT:RETURN
2400 REM **** TOTAL COST TO DATE ****
2405 X=6:Y=1:GOSUB170:PRINT" "
2406 X=7:GOSUB170:PRINT" "
2408 X=8:GOSUB170:PRINT" "
2410 X=9:GOSUB170:PRINT" [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
2412 X=10:GOSUB170:PRINT" [144][221] TOTAL COST TO DATE [146][144] [221]"
2414 X=11:GOSUB170:PRINT" [221] [221]"
2415 X=12:GOSUB170:PRINT" [221] (SAVED RECORDS ONLY) [221]"
2416 X=13:GOSUB170:PRINT" [144][221] [221]"
2418 X=14:GOSUB170:PRINT" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203] "
2420 X=15:GOSUB170:PRINT" "
2422 X=16:GOSUB170:PRINT" IS [195][195][195]> [144]$ ";TC$ " <[195][195][195] ";
2424 X=17:GOSUB170:PRINT" "
2426 X=18:GOSUB170:PRINT" [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201] "
2428 X=19:GOSUB170:PRINT" [221][156] [144][146][221]"
2430 X=20:GOSUB170:PRINT" [221][156] PRESS ANY KEY FOR MENU [144][146][221]"
2432 X=21:GOSUB170:PRINT" [221][156] [144][146][221]"
2434 X=22:GOSUB170:PRINT" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
2436 X=23:GOSUB170:PRINT" "
2438 X=24:GOSUB170:PRINT" ";
2440 GETKEY$:IFKEY$=""THEN2440
2442 GOTO100
2500 PRINT"[147] COMPUTE COST/MILE [146]":SM=0:EM=0:NM=0
2502 INPUT"[144] ENTER STARTING MILEAGE ";SM
2504 INPUT" ENTER ENDING MILEAGE ";EM
2506 PRINT" ARE MILEAGES CORRECT [Y OR N]? [146]"
2508 GETKEY$:IFKEY$=""THEN2508
2510 IFKEY$="N"THEN2500
2512 IFKEY$="Y"THEN2520
2514 GOTO2508
2520 NM=EM-SM:PRINT" NUMBER OF MILES IS...[144]";NM
2522 PRINT" TOTAL COST IS.......[144]$";TC$
2524 MC=TC/NM:MC=INT(MC*1+.5)
2526 MC$=STR$(MC)
2528 IFLEN(MC$)<3THENMC$=LEFT$(MC$,1)+"0"+RIGHT$(MC$,1)
2530 MC$=LEFT$(MC$,LEN(MC$)-2)+"."+RIGHT$(MC$,2)
2532 PRINT" TOTAL COST PER MILE IS...[146] $";MC$
2534 PRINT" PRESS ANY KEY FOR MENU"
2536 GETKEY$:IFKEY$=""THEN2536
2538 GOTO100
2600 POKE53280,5: PRINT"[147] COMPUTE MILES/GALLON [146]":SM=0:EM=0:NM=0
2602 INPUT"[144] ENTER STARTING MILEAGE ";SM
2604 INPUT" ENTER ENDING MILEAGE ";EM
2606 PRINT" ARE MILEAGES CORRECT [Y OR N]? [146]"
2608 GETKEY$:IFKEY$=""THEN2608
2610 IFKEY$="N"THEN2600
2612 IFKEY$="Y"THEN2620
2614 GOTO2608
2620 NM=EM-SM:PRINT" NUMBER OF MILES IS...[144]";NM
2624 PRINT" GALLONS OF FUEL USED [144]";FNRO(TF)
2626 MG=NM/TF
2632 PRINT" AVERAGE MILES/GALLON IS..[146]";FNRO(MG)
2634 PRINT" PRESS ANY KEY FOR MENU"
2636 GETKEY$:IFKEY$=""THEN2636
2638 GOTO100